﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using COFE.Core;

namespace COFE.Core.Logger
{

    public class FileSystemEventArgsExA : EventArgs
    {
        public string ListerKey { get; protected set; }
        public ModifiedAction ChangeType { get; protected set; }

        /// <summary>
        /// Full parse path of the changed entries.
        /// </summary>
        public virtual string ParsePath { get; protected set; }
        public virtual bool IsFolder { get; protected set; }
        public virtual string Name { get { return COFEPath.GetFileName(ParsePath); } }
        
        public override string ToString()
        {
            return String.Format(COFEShared.LogSyntax, ChangeType, ParsePath); 
        }

        public FileSystemEventArgsExA(string listerKey, ModifiedAction changeType, bool isFolder, string parsePath)
        { ListerKey = listerKey; ChangeType = changeType; IsFolder = isFolder; ParsePath = parsePath; }
    }
}
